home *** CD-ROM | disk | FTP | other *** search
- On Thu, 28 May 1998, Grzegorz Kraszewski wrote:
-
- > A co do bezsensowno¶ci pisania takich programów w C (jak napisa³ Kamil
- > Iskra) - dlaczego? Mo¿e Aleksander pisze demo? Nawet demko wygodzniej siê
- > pisze w jêzyku wysokopoziomowym, a nie ma ono obowi±zku byæ kompatybilne z
- > nowymi modelami.
-
- Zgadzam siê z Twoim rozumowaniem, ale mnie chodzi³o o co¶ innego.
-
- Co by nie mówiæ, to C jest jêzykiem wysokopoziomowym. W standardzie jest
- zapisane, ¿e wykonywany program zachowuje siê tak, JAKBY wykonywa³
- zapisany w kodzie ¼ród³owym algorytm. To "jakby" oznacza, ¿e kompilator
- mo¿e robiæ takie cuda, jak mu siê tylko podoba, dopóki z poziomu programu
- nie widaæ ró¿nicy. A wiêc mo¿e np. wykonywaæ referencje do pamiêci nie
- wtedy, kiedy my tego chcemy, tylko kiedy jemu wygodnie. Mo¿e nawet
- referencje zamieniæ miejscami, je¿eli ma taki humor. Albo przy zapisie
- do pamiêci mo¿e sobie poprzedni± warto¶æ najpierw odczytaæ - ot, tak
- sobie.
-
- Problemy zaczynaj± siê przy zabawach z hardware'em. Wiadomo, ¿e z
- rejestrami trzeba siê obchodziæ jak z jajkiem i wy¿ej opisane numery
- raczej nie wychodz± na zdrowie. Dlatego uwa¿am, ¿e C nie bardzo siê do
- tego nadaje i lepiej waln±æ ma³± wstawkê w asemblerze.
-
- Faktem jest, ¿e kwalifikator "volatile" usuwa wiêkszo¶æ z tych problemów,
- jak to kto¶ (Krzysztof Rudnik?) zauwa¿y³.
-
- / Kamil Iskra AmigaOS Linux/i386 Linux/m68k \
- | GeekGadgets GCC maintainer UNIX system administrator |
- | iskra@student.uci.agh.edu.pl kiskra@ernie.icslab.agh.edu.pl |
- \ kamil@dwd.interkom.pl http://student.uci.agh.edu.pl/~iskra /
-
-
-